package models

type BaseKV struct {
	Key int64 `json:"key"`
	Val int64 `json:"val"`
}

type UpdateProp struct {
	Kvs            []*BaseKV      `json:"kvs"`
	HeroGoodsList  []*HeroGoods   `json:"heroGoodsList"`
	HeroUprops     []*HeroUprop   `json:"heroUprops"`
	Pets           []*UpdatePet   `json:"pets"`
	Petinfo        *UpdatePetInfo `json:"petinfo"`
	slotNoticeSkip bool
}

type HeroUprop struct {
	Tid     int64 `json:"tid"`
	SkillId int64 `json:"skillId"`
}

type UpdatePetInfo struct {
	ExpNum    int64 `json:"expNum"`
	FoodNum   int64 `json:"foodNum"`
	SelectTid int64 `json:"selectTid"`
}

type UpdatePet struct {
	Tid         int64 `json:"tid"`
	Lv          int64 `json:"lv"`
	Exp         int64 `json:"exp"`
	Step        int64 `json:"step"`
	SkillVal    int64 `json:"skillVal"`
	LiveEndTime int64 `json:"liveEndTime"`
	Status      int64 `json:"status"`
}

func NewUpdateProp() *UpdateProp {
	return &UpdateProp{
		Kvs:           make([]*BaseKV, 0),
		HeroGoodsList: make([]*HeroGoods, 0),
		HeroUprops:    make([]*HeroUprop, 0),
		Pets:          make([]*UpdatePet, 0),
	}
}
